Für den Endbenutzer verwandelt AJAX schwerfällige aber einfache Web-Anwendungen mit zumeist langen Reaktionszeiten in Web-Anwendungen, die ihren natürlichen Verwandten (Microsoft Windows- oder UNIX-Clients) schon eher ähneln, indem sie kürzere Seitenaufrufzeiten und erweiterte Funktionalitäten bieten.
AJAX ist flexibel und leicht zu verstehen. Sogar Entwickler mit nur wenig Erfahrung in der Client-Entwicklung können sofort loslegen. Kurz gesagt: AJAX erlaubt einen ausgereifteren Ansatz für Web-Design und -Entwicklung, was den Clients wie den Entwicklern gleichermaßen zugute kommt.
Wie entstand AJAX?
Seit der Einführung der ersten Web-Browser zu Beginn der 90er Jahre hat das Design von Web-Schnittstellen enorme Fortschritte gemacht. Nicht zuletzt deshalb hat auch die Nutzung des Internets ebenso enorm zugenommen. Diese Fortschritte brachten allerdings auch ganz spezielle Probleme für die Schnittstellendesigner mit sich, die für das Lösen von logischen Problemen und nicht zur Klärung von Designfragen ausgebildet wurden.
Ein typisches Problem beim Webdesign sind die Schaltflächen Submit (einreichen) und Back (zurück). Wer einmal eine Website geschrieben hat, ist mit dieser Problematik vertraut. Die Benutzer verstehen nicht, weshalb sie nicht auf die Zurück-Schaltfläche klicken können, nachdem sie auf Einreichen geklickt haben. Für die Entwickler ist die Logik dagegen einleuchtend: Man gibt bestimmte Daten ein und fährt mit dem nächsten Schritt fort. Die Endbenutzer sehen diesen Ablauf jedoch ein wenig anders: Daten eingeben, es sich anders überlegen, zurückgehen, Daten ändern und so weiter.
Es ist Aufgabe des Designers diesen Vorgang zu ermöglichen – oder auch zu verhindern, wie es zumeist der Fall ist. Letzten Endes kommt es jedoch vor allem darauf an, das Auftreten von Fehlern zu vermeiden. Für diese und viele andere Probleme bietet AJAX Lösungen.
Wie löst AJAX diese Probleme?
AJAX löst viele Probleme der Web-Entwicklung mittels Verwendung asynchroner Call-Backs zur übergangslosen Aktualisierung der Seitendaten. Vor dem Aufkommen von AJAX konnte dies nur mithilfe ebenso umständlicher wie komplizierter versteckter Frames oder proprietärer Browser-Plug-Ins bewerkstelligt werden.
Technisch basiert AJAX auf einem Objekt namens XMLHttpRequest, das asynchrone Aufrufe an HTTP-Webserver mit XML-Payloads aus Javascript liefert. Dies ermöglicht eine laufende Änderung der Schnittstellen mit DHTML und Javascript durch die vom Server an den Client zurückgesandten Daten, meist im Format XML.
Neueste Kommentare
1 Kommentar zu Mehr Ordnung durch AJAX
Kommentar hinzufügenVielen Dank für Ihren Kommentar.
Ihr Kommentar wurde gespeichert und wartet auf Moderation.
Schöner Artikel!
Ich würde mir aber wünschen, dass auch einige Frameworks genannt werden, die AJAX Entwicklung unterstützen und entsprechende Widgets anbieten.
In erster Linie fallen mir an dieser Stelle folgende ein:
(1)
ExtJS Framework, DER Industrie Standard zur Erstellung komplexer Anwendungen.
Webseite: http://sencha.com
Große proprietäre Systeme nutzen ExtJS als Framework:
Beispiele:
* TYPO3 (ExtJS und Extdirect)
* Documentum
* DIVA Tracking
Vor und Nachteile des Systems
Vorteile:
+ Seit Version 4 strikt MVC compliant
+ Bietet seht viele GUI Bestandteile wie z.B. Grids, Charts, Comboboxen etc.
+ Plattformunabhängig – also für PHP, C#, Python, JAVA und mehr geeignet
+ Unterstützt XML und JSON
+ Unterstützt REST Anwendungen
+ Für Opensource Anwendungen kostenlos
+ Gute Integration mit Extdirect einer Serverseitigen Library für Sprachen wie PHP
+ Taskorientierte Entwicklung möglich
+ Kostenpflichtige IDE zusätzlich erhältlich
+ Dynamische Formulare können direkt aus JSON-Definitionen erstellt werden
+ Ist das Konzept einmal verstanden, kann ExtJs durchaus als RAD Framework genutzt werden, da es Entwicklungszyklen spürbar verkürzt.
Nachteile:
– Sehr umfangreiches und u.U. Ladeintensives Framework;
– Lernkurve recht flach. Umfangreiche Kenntnisse in OO JavaScript benötigt. ExtJs richtet sich vornehmlich an Profis
– Die Entwicklung eigener Styles für GUI Elemente ist aufwändig
– Nach einem update der Version müssen teilweise vergleichsweise Komplizierte Anpassungen am Applikationscode vorgenommen werden. Seit Version 3, hat sich dieses aber deutlich verbessert.
(2)
Jquery, die aktuell meistverwendete Library-Sammlung
Webseite: http://jquery.com
Vorteile:
+ Opensource
+ Richtet sich auch (zumindest teilweise) an Einsteiger
+ Umfangreiche Widget-Sammlung
+ Sehr gute Doku und sehr viele Tutorials und daher auch eine steilere Lernkurve als z.B. bei Extjs
+ Große Community
Nachteile
– AJAX Befehle teilweise umständlicher einzusetzen als bei anderen Scriptsammlungen
(3)
Weitere nennenswerte Libraries/Frameworks
* MooTools
* Scriptaculous
* Dojo Toolkit
* JAX
* YUI
* Xajax
Last but not least ist es natürlich jedem Coder selbst überlassen, welches Framework zum Einsatz kommt. Persönliche Geschmäcker sind ganz unterschiedlich, es macht jedoch Sinn Frameworks zu nutzen die sich einer großen Userschar und somit einer guten Marktdurchdringung erfreuen.
LG und einen schönen Sonntag
Micha
http://consultingdienste.de